package com.jctrip.hotel.source.model.dossen;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @Author: beihai
 * @Date: 2022/9/22 17:36
 * @Description:
 */
@NoArgsConstructor
@Data
public class DossenPriceAndCountData implements Serializable {
    private static final long serialVersionUID = 1L;

    /**
     [
     {
         "roomTypeId": "ST",
         "roomTypeName": "商务套房",
         "rackRate": 179,
         "bizDay2": "2023-07-19 00:00:00",
         "activityResvRoomList": [
         {
         "activityCode": "B0000086",
         "activityName": "东呈82折含早-协议公司",
         "roomPrice": 147,
         "usableCount": 10
         }
         ]
         }
     ],
     */
    @JsonProperty("rackRate")
    private BigDecimal rackRate;
    @JsonProperty("roomTypeId")
    private String roomTypeId;
    @JsonProperty("roomTypeName")
    private String roomTypeName;
    /**
     * 营业日
     * 例：2020-07-10 00:00:00
     */
    @JsonProperty("bizDay2")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
    private String bizDay2;


    @JsonProperty("activityResvRoomList")
    private List<ActivityResvRoomDTO> activityResvRoomList;

    @NoArgsConstructor
    @Data
    public static class ActivityResvRoomDTO {
        // 价格码
        @JsonProperty("activityCode")
        private String activityCode;

        // 售卖名称
        @JsonProperty("activityName")
        private String activityName;

        // 卖价
        @JsonProperty("roomPrice")
        private BigDecimal roomPrice;

        // 可预订数量
        @JsonProperty("usableCount")
        private Integer usableCount;
    }
}
